Dynamic Configuration of Network Devices to Enable Data Transfers

ABSTRACT

A system and method for optimizing the use of network resources is described. In one embodiment, an enterprise first requests provisioning of network resources for a particular transaction. Responsive to that request, network resources are dynamically configured to meet the enterprise&#39;s request. When the transaction is complete, the network resources are returned to a default state.

PRIORITY

The present application is a continuation of commonly owned and assignedapplication Ser. No. 09/730,671 filed on Dec. 6, 2000, Attorney DocketNo. CNTW-004/00US, entitled Dynamic Configuration of Network Devices toEnable Data Transfer, which is incorporated herein by reference.

RELATED APPLICATIONS

The following commonly owned and assigned patent applications are herebyincorporated by reference in their entirety:

1) Patent application Ser. No. 09/730,864, entitled System and Methodfor Configuration, Management and Monitoring of Network Resources, filedon Dec. 6, 2000:

2) Patent application Ser. No. 09/730,680, entitled System and Methodfor Redirecting Data Generated by Network Devices, filed on Dec. 6,2000;

3) Patent application Ser. No. 09/730,863, entitled Event Manager forNetwork Operating System, filed on Dec. 6, 2000;

4) Patent application Ser. No. 10/213,949, entitled Network ComponentConfiguration and Management Method, filed on Dec. 6, 2000; and

5) Patent application Ser. No. 09/730,682, entitled Network OperatingSystem Data Directory, filed on Dec. 6, 2000.

FIELD OF THE INVENTION

The present invention relates generally to network systems. Moreparticularly, but not by way of limitation, the present inventionrelates to systems and methods for dynamic configuration of networkdevices to thereby enable efficient data transfers.

BACKGROUND OF THE INVENTION

Data and the effective, timely movement of data has become the lifebloodof many modern enterprises. Unfortunately, network infrastructurelimitations are impinging upon the ability of enterprises to timely movedata. Enterprises that require data to be delivered within very stricttime requirements are being most severely impacted by these networkinfrastructure limitations. To guarantee the timely delivery of theirdata, these enterprise often are forced to pay steep prices. Moreover,network providers are being forced continually to upgrade theirinfrastructure to supply even the basic services to their customers.Accordingly, the networking community is searching for a method andsystem to better and more economically utilize the existing networkinfrastructure, thereby improving the transfer of data and reducing theassociated cost.

With regard to the actual transmission of data, enterprises aresearching for a way to pay only for the bandwidth that they use. Inessence, they are looking to optimize the use of bandwidth. Presently,an enterprise that requires the bandwidth provided, for example, by a T1line may be forced to rent a dedicated T1 line for an entire month eventhough the enterprise may only need the T1 line for a few days withinthat month. Renting the T1 line for such an extended period is wastefulon two fronts. First, the enterprise is paying for many days of servicethat it does not use. Preferably, an enterprise should only pay for theservice that it actually uses. Second, the bandwidth available on the T1line for those unused days is wasted because other enterprises do nothave access to it. If this unused bandwidth can be captured and madeavailable to other enterprises, the existing network infrastructure canbe better utilized to meet the demands of more enterprises.Unfortunately, no device or method exists to effectively optimize theprovisioning of bandwidth. Thus, even though dedicated lines areexpensive and cumbersome, companies requiring rapid, predictabletransfer of data presently have no other acceptable option.

With regard to the actual routing of data, enterprises are searching foran efficient way to route data based upon priority. Several methods havebeen developed to aid in routing data based upon priority. These presentmethods, however, are not completely satisfactory. For example, afeature called weighted fair queuing can be enabled on modern routers.This feature requires that the router read a precedence bit from eachpacket being passed through the router and then queue lower prioritypackets while routing higher priority packets. Although weighted fairqueuing can be effective, it requires a great deal of processing powerand memory within each router, and when enabled for a long period oftime, weighted fair queuing can cause a router to crash. Additionally,because weighted fair queuing requires a router to analyze each packetthat it receives, it slows the overall operation of the router and,thus, the network.

Because router configuration is a somewhat complicated and timeconsuming process, especially if numerous routers are involved, networkadministrators tend to configure routers in the network either to useweighted fair queuing at all times or not to use weighted fair queuingat all. In reality, most network administrators would like to useweighted fair queuing some of the time and disable it the rest of thetime. Unfortunately, selectively enabling and disabling weighted fairqueuing is so cumbersome that it cannot be effectively implemented.Accordingly, a device and method are needed to selectively enable routeroptimization techniques such as weighted fair queuing.

Because the present network technology suffers from significantdrawbacks, a solution is needed that can efficiently and effectivelyoptimize a network to enable a more efficient transfer of data. Inparticular, a system and method are needed in which both the bandwidthusage and/or the router performance can be easily optimized. Such asystem and method would not only address the needs of the networkcommunity, but also provide new advantages such as content transferoptimization.

SUMMARY OF THE INVENTION

To address the problems and limitations of present network technology,the present invention provides for an efficient, effective optimizationof a network to enable data transfers. In particular, but not by way oflimitation, the present invention provides a method and apparatus tooptimize bandwidth usage, routing performance and content delivery.

In one embodiment, for example, a network provider (or manager) canreceive a request to transfer a block of data between two points. Such arequest could indicate the identity of the party requesting the transferand the volume of data to be transferred. The network provider couldthen identify the services to which the requesting party is entitled.For example, the network provider could determine whether the data blockshould be transferred with a high priority, a medium priority, or a lowpriority.

After the network provider has determined the appropriate level ofservice to assign to the data transfer, it can identify the path andassociated network devices for transferring the data. Next, using asystem in accordance with the present invention, the network devicesalong that path can be dynamically configured to handle the datatransfer within the appropriate service level. For example, prioritydata handling features (such as weighted fair queuing) can be enabled onthe appropriate routers. Additionally, or even alternatively, a virtual,dedicated line between the two transfer points can be established byreconfiguring the appropriate optical devices. Once the data transferhas been completed, the priority data handling features can be disabledand/or the virtual dedicated line between the two points can be torndown.

Accordingly, in the above-described embodiment, network resources can beprovisioned “just-in-time.” Moreover, when network resources are notbeing used, they can be returned to the pool of available resources, andwhen special data handling features such as weighted fair queuing arenot needed, they can be turned off.

BRIEF DESCRIPTION OF THE DRAWINGS

Various objects and advantages and a more complete understanding of thepresent invention are apparent and more readily appreciated by referenceto the following Detailed Description and to the appended claims whentaken in conjunction with the accompanying Drawings wherein:

FIG. 1 illustrates a present network system connecting portions of anenterprise with a dedicated line;

FIG. 2 illustrates a dynamically configurable network system, inaccordance with the present invention, that can be optimized forefficient data transfers;

FIG. 3 is a flowchart of the process of bandwidth optimization on anetwork system such as the one in FIG. 2;

FIG. 4 is a flowchart of the process of routing optimization on anetwork system such as the one shown in FIG. 2; and

FIG. 5 is a flowchart of the process of content transfer optimization ona network system such as the one shown in FIG. 2.

DETAILED DESCRIPTION

Although the present invention is open to various modifications andalternate constructions, a preferred exemplary embodiment that is shownin the drawings is described herein in detail. It is to be understood,however, that there is no intention to limit the invention to theparticular forms disclosed. One skilled in the art can recognize thatthere are numerous modifications, equivalents and alternativeconstructions that fall within the spirit and scope of the invention asexpressed in the claims.

Referring now to FIG. 1, there is illustrated a present network system100 connecting two portions of an enterprise (105 a and 105 b) with astatically defined, dedicated line 110. As previously discussed, theenterprise may be forced to rent the dedicated line 110 for an entiremonth even if the line 110 is only used for a few days of that month.Thus, the line 110 (or at least the provisioned portion of the line 110)can sit idle for the majority of the time. Obviously, by allowing theline 110 to sit idle, valuable network resources that other enterprisescould utilize are wasted, and the enterprise renting the line is forcedto pay for services that it is not using.

Referring now to FIG. 2, there is illustrated a dynamically configurablenetwork 115 that can be optimized for efficient data transfers. In thisembodiment, the two portions of the enterprise are connected to anetwork 115 that includes a plurality of routers 120 and optical devices125. (As one skilled in the art can understand, the configuration of therouters 120 and optical device 125 in FIG. 2 is merely exemplary.)Rather than renting a statically defined, dedicated line 110 (shown inFIG. 1), the enterprise can request that a virtual, dedicated line betemporarily provisioned within the network 115. This concept ofrequesting and providing a virtual, dedicated line on demand may bereferred to as “just-in-time provisioning.” For example, an enterprisecould request, from the network provider, a guaranteed bandwidth of1.544 Mbps (equivalent to a T1 line) between two points for a period oftwo days starting in five minutes. Normally, the network provider couldnot fill such a request because configuring the network to provide sucha bandwidth would take significantly longer than five minutes. Moreover,a network provider could not fill such an order because, with presenttechnology, it would not be economically feasible to establish therequested service for such a short period of time. In fact, configuringa path to reserve that amount of bandwidth can take weeks with thepresent technology.

Using the present invention, however, the network provider could performjust-in-time provisioning and provide enterprises with the requestedbandwidth for the requested time frame. Network providers can performthis just-in-time provisioning through a dynamic configuration of therelevant network devices. Assume, for example, that optical device 125 band its associated lines could provide the bandwidth requested by theenterprise. This optical device could be dynamically identified anddynamically configured to reserve the requested bandwidth for therequested timeframe. Moreover, router 120 a and router 120 f could bedynamically configured to route data from the enterprise to opticaldevice 125 b rather than to any other network device and associatedpath.

In one embodiment of the present invention, the dynamic configuration ofnetwork devices is achieved through directory-based networking. Oneexample of directory-based networking is described in commonly owned andassigned patent application no. CNTW-001/00US, entitled System andMethod for Configuration, Management and Monitoring of NetworkResources, filed on Dec. 6, 2000. Briefly, directory-based networkinginvolves storing a configuration record for each network device in acentral repository. When a network device needs to be reconfigured, thecentrally-stored configuration record for that device can be retrievedand altered. The altered configuration record can then be used togenerate the device-specific code needed to reconfigure the relevantnetwork devices. Finally, once the device-specific code has beengenerated, that code is provided (either through a push or get) to theappropriate network device(s). Thus, by using directory-basednetworking, network devices can be dynamically configured with a minimalamount of actual human intervention, thereby allowing for just-in-timeprovisioning of network resources.

Referring now to FIG. 3, there is illustrated a flowchart of the processof bandwidth optimization on a network system such as the one in FIG. 2.In particular, FIG. 3 describes the process for optimizing theutilization of a fiber optic line or any other type of line. Initially,an enterprise requests a bandwidth of a certain size between two pointsfor a particular timeframe (or for a particular volume of data). Next, apath 305 and the associated network devices that can provide therequested bandwidth are identified 310. The network devices along thatpath are then configured to provide the requested bandwidth 315. Forexample, the optical devices along the identified path can be configuredto reserve the requested bandwidth for the requesting enterprise. Oncethe requested timeframe has expired, the optical devices can be returnedto a default setting, thereby tearing down the temporary dedicated path320. The network resources previously dedicated to the enterprise's pathare now returned to the pool of network resources where they can beaccessed by other enterprises.

Accordingly, one embodiment of the present invention provides a methodfor just-in-time provisioning of network resources. In particular, thisembodiment provides a method for easily and dynamically establishing andtearing down a virtual, dedicated transmission path. With the presentinvention, enterprises can request and pay for only those networkservices that they need. Moreover, through the present invention,network providers can better utilize network resources by returningunused network resources to a pool of generally available resources. Inprior art systems, these unused network resources could have remaineddedicated to a single enterprise whether or not they were actually beingused.

Referring now to FIG. 4, there is illustrated a flowchart of the processof routing optimization on a network system such as the one shown inFIG. 2. In this embodiment, routers and similar devices can be optimizedto efficiently handle data based upon the priority of the data. As withbandwidth optimization, routing optimization can be enabled bydirectory-based networking principles that allow for dynamicconfiguration of network devices. In this particular embodiment,prioritization features of routing devices can be selectively enabledand disabled to route data based upon priority of that data.

Initially, an enterprise may request that data be routed with a highpriority or that the enterprise be given a certain routing priority fora particular timeframe 405. In either case, the network provider candetermine the enterprise's service level and link that service level toa priority 410. For example, if the enterprise has a top level serviceagreement, that enterprise may have access to the highest level ofpriority that the network provider can give. Alternatively, if theenterprise has a lower level service agreement, that enterprise may onlyhave access to a mid-level priority. By tiering priority in thisfashion, enterprises can select and pay for the level of service thatthey need. Moreover, network providers can maximize network resourcesand revenue by providing higher priority service(s) to those customersthat need it and that are willing to pay for it.

Responsive to an enterprise requesting that data be routed with acertain priority, a pathway can be identified 415 and routers along thatpathway can be dynamically reconfigured to enable priority data handlingfeatures such as weighted fair queuing 420. With these priority datahandling features enabled, higher priority data can be routed beforelower priority data.

As previously described, weighted fair queuing is effective for routingdata based upon priority but can cause network congestion and routerfailure when used unnecessarily. The present invention addresses thisproblem by allowing for weighted fair queuing and similar priority datahandling features to be dynamically disabled 425. In other words,weighted fair queuing can be turned off when not needed withoutsignificant difficulty.

Notably, the present invention allows for the concurrent operation ofbandwidth optimization and routing optimization. For example, anenterprise could request a virtual dedicated line and also requestrouting priority to that line. The network provider could provisionthese services based upon a service level agreement with the enterprise.

Referring now to FIG. 5, there is illustrated a flowchart of the processof content transfer optimization on a network system such as the oneshown in FIG. 2. In this method, an enterprise can notify its networkprovider that it has a block of data to be moved between two pointswithin certain quality parameters 505. The quality parameters can bedirectly indicated, e.g., specified delivery time, or they can bedetermined according to the type of content being transferred 510. Forexample, movement of disk mirroring content may take a higher prioritythan movement of replication content.

After the request for content transfer has been made and the importanceof that transfer has been determined 515, the path for transferring thatcontent can be identified 520. If the requesting enterprise is utilizinga virtual dedicated line, the content transfer can be made using thatline. Additionally, the routers connected to that line can be configuredsuch that weighted fair queuing is enabled 525 for this content transferand disabled when the transfer is complete 530. Alternate embodimentsinvolve differing combinations of bandwidth optimization and contentoptimization. As with bandwidth optimization and routing optimization,content-delivery optimization can be achieved, in a variety of ways,including through the use of directory-enabled networking.

In conclusion, the present system provides, among other things, a systemand method for optimizing the utilization of network resources. Thoseskilled in the art, however, can readily recognize that numerousvariations and substitutions may be made in the invention, its use andits configuration to achieve substantially the same results as achievedby the embodiments described herein. Accordingly, there is no intentionto limit the invention to the disclosed exemplary forms. May variations,modifications and alternative constructions fall within the scope andspirit of the disclosed invention as expressed in the claims.

1. A method for optimizing data transmissions, the method comprising:receiving a request to move data via a path between a first point and asecond point; receiving a request for bandwidth between the first pointand the second point for a particular length of time; identifying atleast a first network device configurable to assist in providing boththe requested path and the requested bandwidth between the first pointand the second point; retrieving at least a first configuration recordfrom a central repository of configuration records that corresponds tothe at least a first network device, wherein the retrieved configurationrecord includes configuration information about the at least a firstnetwork device; altering the at least a first configuration record inaccordance with the requested path and the requested bandwidth;generating, using the altered configuration record, commands toconfigure the at least one network device so as to enable the at leastone network device to assist in providing the requested path and therequested bandwidth; and sending the commands to the at least a firstnetwork device.
 2. The method of claim 1 including verifying the requestfor bandwidth complies with a particular service level agreement inplace for a customer requesting the bandwidth.
 3. The method of claim 1including accessing service level agreement information responsive to acompletion of the data moving from the first point to the second point,and configuring the identified at least a first network device todisable the requested bandwidth between the first point and the secondpoint as defined by the service level agreement information.
 4. Themethod of claim 1, wherein the identifying includes identifying aplurality of network devices configurable to assist in providing boththe requested path and the requested bandwidth, and wherein theretrieving includes retrieving a plurality of configuration records fromthe central repository of configuration records, each of the pluralityof configuration records including information that is unique to acorresponding one of the plurality of network devices.
 5. The method ofclaim 1, wherein the step of identifying at least a first network devicecomprises the step of: identifying at least a first optical device.
 6. Amethod for optimizing data transmissions, the method comprising thesteps of: receiving a request to move data via a path between a firstpoint and a second point; receiving a request for bandwidth between thefirst point and the second point; identifying at least a first networkdevice configurable to assist in providing the requested bandwidthbetween the first point and the second point; retrieving at least afirst configuration record that corresponds to the at least a firstnetwork device, wherein the retrieved configuration record includesconfiguration information about the at least a first network device;altering the at least a first configuration record in accordance withthe requested path and the requested bandwidth; generating, using thealtered configuration record, device-specific commands to the at leastone network device; configuring, using the commands, the identified atleast a first network device so as to enable the at least a firstnetwork device to assist in providing the requested bandwidth and therequested path between the first point and the second point; andresponsive to a predefined event, configuring the identified at least afirst network device to disable the requested path and the requestedbandwidth between the first point and the second point in accordancewith a customer service level agreement that governs the requests forthe path and the bandwidth.
 7. The method of claim 6, wherein thepredefined event is a completion of the movement of the data from thefirst point and the second point.
 8. The method of claim 6, wherein therequest for bandwidth includes a request for a select volume of data. 9.The method of claim 6, wherein the request for bandwidth includes arequest for a particular data priority.
 10. The method of claim 6,wherein the generated device-specific commands are configured to enablethe at least a first network device to assist in providing the path as aloosely defined path.
 11. The method of claim 6, wherein the generateddevice-specific commands are configured to enable the at least a firstnetwork device to assist in providing the path as a strictly definedpath.
 12. The method of claim 6, wherein the generated device-specificcommands are configured to enable the at least a first network devicewith an awareness of other source locations traffic needing to routetraffic to its representative location; and wherein the generateddevice-specific commands are configured to enable the at least a firstnetwork device with an awareness of other destination locations that itmay need to route traffic to.
 13. The method of claim 6, wherein thegenerated device-specific commands are configured to enable theidentified at least a first network device an ability to designatetraffic as a predefined type for movement through the network.
 14. Themethod of claim 13, wherein the generated device-specific commands areconfigured to enable the identified at least a first network device anability to designate the traffic as a predefined type in accordance withagreed and defined data types as required for routing through a network.15. The method of claim 13, wherein the generated device-specificcommands are configured to enable the identified at least a firstnetwork device an ability to designate the traffic as a predefined typefor movement through the network in fulfillment of conditions in thecustomer service level agreement.
 16. The method of claim 6 wherein thegenerated device-specific commands are configured to enable at least afirst network device an ability to filter traffic, wherein the filteringis carried out in accordance with a constraint selected from the groupconsisting of a predefined traffic priority and fulfillment of acondition in the customer service level agreement.
 17. The method ofclaim 6, wherein the generated device-specific commands are configuredto enable the identified at least a first network device an awareness ofpredefined policies required for movement through the network inaccordance with agreed and defined data designations or in fulfillmentof a condition in the customer service level agreement.
 18. A system formanaging a transmission of data in a network comprising: a repositoryfor a plurality of configuration records, wherein each of the pluralityof configuration records includes configuration information for acorresponding one of a plurality of network devices in a network; and athe network manager unit communicatively coupled to each of the networkdevices and to the repository of configuration records wherein thenetwork management component is configured to: receive a request for apath between a first point and a second point for the transmission ofthe data; identify a collection of the plurality of network devices thatare configurable to assist in providing the requested path; retrieve andalter each of a portion of the plurality of configuration records inaccordance with the requested path wherein each of the collection of theplurality of configuration records corresponds to one of the portion ofthe plurality of network devices; generate using the alteredconfiguration records, device-specific commands to configure each of thecollection of the plurality of network devices so as to enable thecollection of the plurality of network devices to assist in providingthe requested path; and send the device-specific commands to each of thecollection of the plurality of network devices.
 19. The system of claim18 wherein the network manager unit is configured to receive a requestto handle the transmission of the data with a particular priority, andwherein the network manager unit is configured to generate, in responseto the particular priority complying with a service level agreement thatgoverns the request, the device specific commands so as to enable eachof the network devices in the collection of the plurality of networkdevices to assist the transmission of the data with the particularpriority.
 20. The system of claim 18 wherein the network manager unit isconfigured to receive a request for a particular level of bandwidth forthe transmission of the data, and wherein the network manager unit isconfigured to generate, in response to the particular level of bandwidthcomplying with a service level agreement that governs the request, thedevice specific commands so as to enable each of the network devices inthe collection of the plurality of network devices to assist thetransmission of the data with the particular level of bandwidth.
 21. Thesystem of claim 18 wherein the network manager unit is configured toreceive a request for a particular volume of data for the transmissionof the data, and wherein the network manager unit is configured togenerate, in response to the particular level of bandwidth complyingwith a service level agreement that governs the request, the devicespecific commands so as to enable each of the network devices in thecollection of the plurality of network devices to assist thetransmission of the data with the particular level of bandwidth.